import {defineConfig} from 'vite'
import vue from '@vitejs/plugin-vue'
import path from 'path'
import AutoImport from 'unplugin-auto-import/vite'

export default defineConfig({
    plugins: [
        vue(),
        AutoImport({
            // 要自动导入的库
            imports: [
                'vue',
                'vue-router',
                {
                    'vuex': [      // 手动指定 Vuex 要引入哪些方法
                        'useStore'
                    ]
                },
                // 导入 Element Plus 的部分 API
                {
                    'element-plus': [
                        'ElMessage',
                        'ElMessageBox'
                    ]
                }
            ],
            //自定义文件路径：自动引入 useTableMixins
            dirs: [
                'src/table' // 会自动扫描这个目录下的所有导出函数
            ],
            // 生成 auto-imports.d.ts 到 src 目录下（建议）
            dts: 'src/auto-imports.d.ts',
            // 自动导入到 setup 语法中
            eslintrc: {
                enabled: true, // 生成对应的 eslint 配置文件
                filepath: './.eslintrc-auto-import.json',
                globalsPropValue: true
            }
        })
    ],
    base: '/',
    resolve: {
        alias: {
            '@': path.resolve(__dirname, './src')
        }
    },
    css: {
        preprocessorOptions: {
            scss: {
                //解决警告
                silenceDeprecations: ["legacy-js-api"],
            },
        },
    },
})
